<?php

/*-----------------------------------------------------------*\
|               - Модуль налаштування системи -                 |
|                 Author:  Skalden Russell                    |
|                 Last modify: 20110302                      |
\*-----------------------------------------------------------*/

// Захист модулю
if(!defined('TSUE_SEC')) 
{
	require_once('../../data/messages/hacking.attempt.php');
	die($TSUE_MSG);
}

echo <<<HTML
<table width="100%">
	<tr>
		<td width="70" height="70" valign="middle" align="center" style="padding-top:5px;padding-bottom:5px;"><img height="70" width="70" src="styles/default/adminpanel/images/ico/system.png" border="0"></td>
		<td valign="middle"><div class="quick"><h3>Установка налаштувань</h3>Редагування новин, дозволяє вам змінювати або доповнювати вже додані новини, для цього вам потрібно вибрати зі списку
		існуючих новин потрібну і відредагувати її.</div></td>
	</tr>
</table>
<br />
HTML;

//////////////////////////////////////////////////////////////
//    					 Обробка дій
//////////////////////////////////////////////////////////////
if(isset($_POST['save_btn']))
{
	// Кодування / декодування тексту
	include_once( TSUE_DIR . '/engine/include/security.text.php' );
	$sectext = new CSecurity();
	$_POST['news_pp'] = $sectext->digit( $_POST['news_pp'] );
	$_POST['public_pp'] = $sectext->digit( $_POST['public_pp'] );
	$_POST['file_pp'] = $sectext->digit( $_POST['file_pp'] );
	$_POST['cap'] = $sectext->digit( $_POST['cap'] );
	
	if(isset($_POST['gzip']) && $_POST['gzip'] == 'Yes')
	{
		$_POST['gzip'] = '1';
	}
	else
	{
		$_POST['gzip'] = '0';
	}	
	
	$_POST['theme'] = str_replace('(', ' ', $_POST['theme'] );
	$_POST['theme'] = str_replace(')', ' ', $_POST['theme'] );
	$_POST['theme'] = str_replace('$', ' ', $_POST['theme'] );
	
$content = <<<HTML
<?php

/*-----------------------------------------------------------*\
|                 Файл конфігурації системи                  |
\*-----------------------------------------------------------*/

	\$MALINA_CONF = array(
	'gzip'		=>	"{$_POST[gzip]}",
	'captcha'	=>	"{$_POST[cap]}",
	'news_pp'	=>	"{$_POST[news_pp]}",
	'public_pp'	=>	"{$_POST[public_pp]}",
	'file_pp'	=>	"{$_POST[file_pp]}",
	'theme_cur'	=>	"{$_POST[theme]}" );

?>
HTML;
	if( ($fp = fopen( TSUE_DIR . '/data/settings.php', 'w')) === FALSE ){
		echo 'Ошибка записи';
	} else {
		fwrite($fp, $content);
		fclose($fp);
		// if posible try set chmod
		@chmod( TSUE_DIR . '/data/settings.php', 0666);
	}
	
	echo <<<HTML
	<div align="center">
		<div align="center" style="width: 50%; border: 1px solid #33ff00; background-color: #CCFFCC; padding: 5px; overflow: auto;">  
			<table>
			<tr>
				<td> <img style="padding: 5px;" width="30" height="30" src="styles/default/adminpanel/images/ico/udacha.png" /> </td>
				<td> Налаштування успішно оновлені. </td>
			</tr>
			</table>
		</div>
	</div>
	<br />
HTML;
}

include_once( TSUE_DIR . '/data/settings.php' );

function GetDesignCfg( $file )
{
	$aCfg = array();
	$content = "";
	$fin = @fopen( $file, "r");
	while(!feof($fin))
	{
		$content .= fgets($fin, 4096);
	}
	fclose($fin);
	
	// Получить параметры
	preg_match_all("/>[a-zA-Z]+(?:.?)+=(?:.?)+\"(.*)\"/i", $content, $buf );
	
	$aCfg['stylename'] = $buf[1][0];
	$aCfg['company'] = $buf[1][1];
	$aCfg['author'] = $buf[1][2];
	$aCfg['date'] = $buf[1][3];
	
	return $aCfg;
}

$hDir = opendir( TSUE_DIR . '/styles/');
$styles = array();
$design_cfg = array();

while( false !== ($file = readdir( $hDir ) ) ) 
{
	if( @is_dir( TSUE_DIR . '/styles/' . $file ) && ($file != "." && $file != ".." && $file != "default") ) 
	{
		if( file_exists(TSUE_DIR . '/styles/' . $file . "/design.cfg") )
		{
			$design_cfg[] = GetDesignCfg( TSUE_DIR . '/styles/' . $file . "/design.cfg" );
			$styles[] = $file;
		}
	}
}
closedir( $hDir );

$select = '<select name="theme" size="3" >';
$i = 0;
foreach( $styles as $StyleName )
{
	if($MALINA_CONF['theme_cur'] == $StyleName)
	{
		$select .= '<option value="'. $StyleName .'" SELECTED>' . $StyleName . ' - ' . $design_cfg[$i]['stylename'] . ' - </option>';
	}
	else
	{
		$select .= '<option value="'. $StyleName .'" >' . $StyleName . ' - ' . $design_cfg[$i]['stylename'] . ' - </option>';
	}
	$i++;
}
$select .= '</select>';

$gzip_attr_txt = "";
if($MALINA_CONF['gzip'] == 1)
{
	$gzip_attr_txt = "CHECKED";
}

echo <<<HTML
<script language="javascript" type="text/javascript" src="engine/ajax/js_malina_default.js"></script>

<form action="{$_SERVER['PHP_SELF']}?section=settingup" method="POST">
<table border="1" class="infot" style="border: 1px solid #333300; background-color: #FDFDDB; padding: 5px; overflow: auto;">
	<tr>
		<td> Кількість символів <b>Каптчі</b> </td>
		<td> <input type="text" size="5" id="id_cap" name="cap" value="{$MALINA_CONF[captcha]}" /> </td>
	</tr>
	<tr>
		<td> Кількість виведених <b>Новин</b> </td>
		<td> <input type="text" size="5" id="id_news_pp" name="news_pp" value="{$MALINA_CONF[news_pp]}" /> </td>
	</tr>
	<tr>
		<td> Кількість виведених <b>Публікацій</b> </td>
		<td> <input type="text" size="5" id="id_public_pp" name="public_pp" value="{$MALINA_CONF[public_pp]}" /> </td>
	</tr>
	<tr>
		<td> Кількість виведених <b>Файлів</b> </td>
		<td> <input type="text" size="5" id="id_file_pp" name="file_pp" value="{$MALINA_CONF[file_pp]}" /> </td>
	</tr>
	<tr>
		<td> Увімкнути <b>GZip compression</b> </td>
		<td> <input type="checkbox" name="gzip" value="Yes" {$gzip_attr_txt} /></td>
	</tr>
	<tr>
		<td> Дизайн </td>
		<td>
			{$select}
		</td>
	</tr>
	<tr>
		<td colspan="2">
			<input type="submit" name="save_btn" class="button" value="Зберегти" /> &nbsp;
			<input type="button" class="button" value="Скасувати" onclick=" window.location='{$_SERVER['PHP_SELF']}?section=xae';" /> &nbsp;
			<input type="submit" class="button" value="Умовчання" onclick="malina_default(); return false;" /> &nbsp;
			<input type="submit" class="button" value="Очистити" onclick="malina_clear(); return false;" /> 
		</td>
	</tr>
</table>
</form>
<br /><br />
HTML;

?>